package com.eva.admin.biz.system.rbac.dto;

import com.eva.framework.security.field.EnableSecureField;
import com.eva.framework.security.field.SecureField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.Date;
import java.util.Set;

@Data
@Schema(description = "创建用户参数")
@EnableSecureField
public class CreateSystemUserDTO {

    @Schema(description = "用户名")
    private String username;

    @Schema(description = "姓名")
    private String realName;

    @Schema(description = "工号")
    private String empNo;

    @Schema(description = "生日")
    @JsonFormat(pattern = "yyyy/MM/dd")
    private Date birthday;

    @Schema(description = "性别")
    private String gender;

    @SecureField
    @Schema(description = "邮箱")
    private String email;

    @SecureField
    @Schema(description = "手机号码")
    private String mobile;

    @Schema(description = "头像")
    private String avatar;

    @Schema(description = "密码")
    private String password;

    @Schema(description = "配置的角色ID集")
    private Set<Integer> roleIds;
}
